<!DOCTYPE html>
<html lang="en" class="dark">
  <head>
    <meta charset="UTF-8" />
    <link rel="icon" type="image/svg+xml" href="/vite.svg" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Vite + Vue + TS</title>
  </head>
  <style>
    #app-loading {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: #fff;
      display: flex;
      justify-content: center;
      align-items: center;
      z-index: 9999;
    }
    .loading-spinner {
      width: 40px;
      height: 40px;
      border: 4px solid rgba(0, 0, 0, 0.1);
      border-radius: 50%;
      border-top-color: #1890ff;
      animation: spin 1s linear infinite;
    }
    #app-loading {
      /* ... 其他样式不变 ... */
      transition: opacity 0.5s ease-out;
    }

    #app-loading.hide {
      opacity: 0;
      pointer-events: none; /* 防止点击 loading 层 */
    }
    @keyframes spin {
      to {
        transform: rotate(360deg);
      }
    }
  </style>
  <body>
    <!-- 这个 div 会在 Vue 加载完成前显示 -->
    <div id="app-loading">
      <div class="loading-spinner"></div>
    </div>
    <div id="app"></div>
    <script type="module" src="/src/main.ts"></script>
  </body>
</html>
